perm filename NSF.2A[DOC,TOB] blob
sn#012063 filedate 1972-11-10 generic text, type T, neo UTF8
00100 Abstract
00200 I The Need for Advanced Automation
00300 II Research Plan
00400 A. The Pilot Assembly Station
00500 1. Tasks
00600 2. Hardware
00700 B. Vision Development
00800 C. Manipulator Development
00900 D. Systems Support and Related Issues
01000 III Dissemination of Results and Relation with Industry
01100 IV Staff
01200 V Computing Facilities
01300 VI Budget
01400 VII References
01500 VIII Relevant Laboratory Output
01600 Films,THeses,Reports
00100 ABSTRACT
00200 ADVANCED AUTOMATION DEVELOPMENT
00300
00400 The SAIL proposes to undertake a project of development and
00500 application in advanced automation. The project includes a pilot
00600 assembly station carrying out practical assembly tasks, a
00700 hardware-software system ready for production and fundamental work on
00800 the underlying problems of vision, manipulation and problem-solving.
00900 We believe the laboratory is uniquely qualified to carry out this
01000 program which will be an important contribution to increasing
01100 industrial productivity.
01200
01300 Our basic approach involves a general purpose system integrating
01400 sensors and manipulators controlled by sophisticated programs in a
01500 digital computer. We have worked with such systems since 1965 and
01600 have developed many of the basic ideas required in general purpose
01700 assembly devices. The main thrust of this proposal is to establish
01800 the practicality of our methods and carry their development to a
01900 point from which industry can take over.
02000
02100 The body of this proposal is divided into four main sections: Pilot
02200 assembly station, vision, manipulation development, and systems
02300 support. Each section contains a brief description of the
02400 laboratory's past work in the area, how it is to be applied, and what
02500 extensions are to be undertaken. Finally, we consider a number of
02600 important issues concerning our relations with industry and withother
02700 reseach and development efforts in advanced automation.
00100 I. THE NEED FOR ADVANCED AUTOMATION
00200
00300
00400
00500 The benefits available from automation in manufacturing are now
00600 widely appreciated. The current interest in advanced (computer-
00700 oriented) automation stems from two sources. The first is the
00800 decreasing cost of computation combined with an improved
00900 understanding of how to apply computation to various aspects of
01000 manufacturing. The second cause is the realization that many current
01100 manufacturing operations, primarily assembly and inspection, will
01200 require quite complex automation techniques. The same considerations
01300 apply to the automation of tasks such as laboratory and medical
01400 procedures, but the emphasis has been (as ours will be) on
01500 manufacturing. kThere has been a great deal written lately on the
01600 potential benefits of advanced automation and we will not attempt to
01700 restate the points made so cogently elsewhere. A recent
01800 ARPA-sponsored study [] in which we participated suggests the
01900 following major benefits from advanced automation:
02000 reduced prices
02100 increased product quality and uniformity
02200 customization of products
02300 increased job satisfaction. We would like to add just one
02400 comment. As we have seen with other technological developments such
02500 as numerical-controlled tools, there will be things made which were
02600 previously impractical to make. There is widespread agreement in the
02700 technical , industrial and government communities on the potential
02800 benefits of advanced automation. There is much less agreement on the
02900 level of sophistication needed in automation hardware and software.
03000 We believe that the most practical solution for intermediate
03100 quantities will be to develop general purpose assembly and inspection
03200 devices controlled by sophisticated programs in digital computers.
03300
03400 We assume that present manipulators have a small but stable market,
03500 and that most will have minicomputers soon (Sundstrand does now).
03600 Will the incremental cost of touch, force and visual sensors be
03700 offset by the opening of new capabilities, and will the cost be
03800 offset by reduced cost of system design for machines which allow
03900 loose alignment tolerances? We estimate hardware costs in a separate
04000 paragraph, and estimate that by 1977, the incremental cost of visual
04100 sensors will be roughly $1100, with about $300 additional for a laser
04200 ranging scheme as we use now. With the additional memory
04300 requirements, and the multiple of two in marketing, visual sensors
04400 will add $4k to $6k to the selling price, or about 15%-20% of current
04500 manipulator prices. Presumably labor costs will inflate also, so
04600 that cost comparisons will not change appreciably over that time
04700 scale unless significant new mechanical designs are made. A
04800 conclusion is that sensor-equipped robots will be available at slight
04900 additional cost.
05000
05100 We do not expect mechanical production costs to drop dramatically as
05200 electronics costs fall with integration. The most promising cost
05300 reduction development would be high-production standard modules such
05400 as robots. As an example, consider the Stanford arm; produced in
05500 unit quantity, parts, manufacturing and assembly costs are
05600 approximately $10k. The arm is much simpler than an automobile; its
05700 potential selling price in large quantity is $3k, without
05800 minicomputer control. Potentially, a robot with two arms,
05900 minicomputer control, and touch sensors is possible for under $10k in
06000 quantity. This is the range of price of present transfer machines
06100 which have limited market because they have limited motion, no
06200 control, and are thus locked out of the economy of scale. Versatile
06300 assembly devices have an advantage in utilization in medium scale and
06400 job shop production; their utilization efficiency can be higher
06500 because versatility allows a variety of operations to be scheduled
06600 simultaneously. The availability of computers for production
06700 scheduling will allow the flexibility to be used to advantage. With
06800 simple devices, transfer and assembly operations must be broken down
06900 into small operations with comparable cost to a more dexterous
07000 system. Robots can cut down on real estate, since several operations
07100 can be done at one station; belts and other transfer devices require
07200 more space than desirable. A robot which can pick parts from a cart
07300 would save considerable space. Robots would also have longer life
07400 over which to amortize costs, since they could operate with greatly
07500 changed production operations, and evolve with new hardware and
07600 software modules. They would have higher reliability, since they
07700 would have monitoring, contingency action, and error recovery. They
07800 would be self-aligning, self-calibrating, and self-testing. There has
07900 been difficulty in meeting the tight tolerances necessary for
08000 operation of non-intelligent devices. It is hard to estimate the
08100 value of systems which work within current industrial tolerance,
08200 rather than requiring radical improvements in engineering practice,
08300 but that continuity does seem important.
08400
08500 Functional modularity has been emphasized in our studies; modularity
08600 is clearly possible and there is a powerful economic incentive to
08700 assemble widely varying systems from one, two, or three arm modules,
08800 force and touch modules, vision and ranging modules, with planning
08900 and monitoring modules, computer-aided mechanical design and job
09000 specification for robots on a local or network time-sharing service,
09100 with software modularity. This approach to advanced automation saves
09200 much wasted effort. The economies of scale in production of assembly
09300 modules are matched by economies of intellectual scale: the design
09400 process is modularized and easily communicable; there is a common
09500 discipline which can be widely absorbed; developments of many sources
09600 can be integrated. The alternative is special design for each
09700 operation. We expect that at some point, design will be cheaper with
09800 standard robot modules than with special purpose designs, just as it
09900 is now more economical to use mini-computer controllers than special
10000 purpose controllers. To some extent, the dehumanized industrial
10100 worker now fills the role of standard module, so that we do not
10200 expect discontinuous change. The continuity with decades of
10300 experience with design for human versatility in assembly can be
10400 relied upon; robots with some versatility, sensing, contingency
10500 actions, and dexterity will provide a transition to newer schemes
10600 which will evolve more slowly. Advances which benefit special case
10700 automation and traditional trends in automation for human production
10800 will also aid general purpose devices. For example, new techniques
10900 in bonding and fastening will simplify many assembly tasks to the
11000 capability of robots, while still too complex for simple
11100 servomechanisms. Another advantage of general purpose techniques is
11200 the ease with which the size of the robot can be scaled up or down.
11300 There appears to be no difficulty in making very large or very small
11400 assembly stations which use essentially the same programs.
11500
11600 The development of general purpose assembly devices will benefit
11700 manufacturers and a broad spectrum of industry. There does not seem
11800 to be a private institution with the competence or the desire to
11900 undertake this program. It is an appropriate area for governmental
12000 action to help meet a national need.
12100
12200 But given sensor-equipped robots at little extra cost, they will have
12300 visual ability to sense color, strong contrasts in brightness,
12400 recognize known objects from two dimensional outlines (top view of
12500 flat object) or three dimensionally using depth, to a certain extent
12600 they will be able to recognize three dimensional objects using
12700 monocular recognition. They will be able to visually align mating
12800 parts in assembly operations, increase reliability by
12900 self-calibration and flaw and disaster detection, and permit large
13000 tolerances in parts transfer, even permitting parts to be taken from
13100 a bin. Several of these abilities are not yet available in the
13200 laboratory, but with known conditions and objects, and some
13300 engineering (color coding) are achievable within that time span.
13400
00200 II RESEARCH PLAN
00300
00400
00500 A. THE PILOT ASSEMBLY STATION
00600
00700 The basic goal of the proposed project is to produce a
00800 general purpose assembly station and to prove its applicability to
00900 real problems. The project will be considered a success if one or
01000 more enterprises chooses to manufacture and market the general
01100 purpose station. There are a number of hardware and software problems
01200 to be solved in meeting our goal, but we expect to overcome them.
01300
01400 The assembly station is assumed to be normally connected to a large
01500 time-shared computer facility. Not only does this appear to be a good
01600 design for our problem, but it is also necessary for an integrated
01700 programmed automation facility. The only statement in the ARPA study
01800 report[] is: "The maximum impact of computers in manufacturing will
01900 come from complete, real-time computer cognizance and control of all
02000 processes and resources, allowing the precise scheduling and
02100 allocation of these resources."
02200
02300 Each assembly station will consist of a small digital computer, one
02400 or more manipulators and cameras. Manipulators and cameras will be
02500 appropriate both in number and layout to a given task, and will be
02600 digitally controlled by the station computer.
02700
02800 The program in the station computer will be flexible as to the number
02900 and position of manipulators and cameras. It will control input from
03000 the cameras, provide for some pre-processing of the picture and the
03100 application of simple tests to the visual data. In the case of
03200 manipulators it will provide for simultaneous servo control. It will
03300 also process other inputs, such as from touch sensors on the
03400 manipulators, from photocell interrupt devices, limit switches, etc.
03500 Both analog and binary outputs will be available for the control of
03600 other devices.
03700
03800 Each station computer will have access to a task program specifying
03900 the actions and tests it should perform to carry out its task. This
04000 task program will be compiled by the central computer. Compilation
04100 will consist of the analysis of predicted scenes in order to specify
04200 simple tests that the station computer can carry out, the calculation
04300 of collision free trajectories for the manipulators, the sequence of
04400 operations and simple contingency plans. etc. We are planning for
04500 tasks whose normal execution does not require detailed scene
04600 analysis. If scene analysis becomes necessary (e.g. a dropped part)
04700 we envision the station sending an image to the central computer for
04800 processing.
04900
05000 The central computer will perform overall control of the individual
05100 assembly stations and the relative rates of production. If at any
05200 station a planned test fails, for which a contingency plan does not
05300 exist, or any unexpected sensor signals are received, the central
05400 computer will also be interrupted and appropriate actions taken.
05500
05600 Most of the hardware required for the assembly station has been
05700 developed for the laboratory. Manipulators and cameras will be
05800 discussed in detail below. The major additional problem is to refine
05900 the existing designs to meet the demands of an industrial
06000 environment.
06100
06200 In addition we will purchase a small computer such as the PDP-11 and
06300 interface the existing arms to it together with one or more cameras.
06400 A software package for the small computer will then be developed in
06500 order to control the manipulators, read the TV cameras and to perform
06600 low level visual analysis. Programs to plan tasks, calibrate the
06700 system and to perform higher level visual analysis, error recovery
06800 and strategy planning will be written in an high level language for
06900 the time-sharing processor.
07000
07100 The most difficult part of the assembly station, and the heart of the
07200 of the proposal is a demonstration of the feasibility of the station.
07300 We plan to do this by developing programs which actually assemble and
07400 inspect a variety of fairly complex manufactured items.
07500
07600 A typical example is our current project, assembly of a water pump.
07700 The major parts are to be located, the screws are supplied as is
07800 standard, by a feeder. Locating the body and cover of the pump
07900 require a gross localization, then a fine localization of screw
08000 holes. Touch provides a final accuracy and independent coordination
08100 of the hand. The placing of alignment pins within screw holes can
08200 be monitored visually; although the previous actions provide adequate
08300 accuracy. Placing of the cover over alignment pins can be carried
08400 out without vision. However, our improved force sensing will be
08500 useful for that operation when completed. The insertion of alignment
08600 pins in other screw holes, and the insertion of screws in holes will
08700 be monitored visually.
08800
08900 As we move to more difficult tasks, the sophistication required goes
09000 up quite rapidly. The current manipulation routines seem to be
09100 expandable to cover anticipated problems, especially since we intend
09200 to employ special purpose manipulators (tools) for some tasks. The
09300 main Part of our effort will be vision for assembly; an assembly task
09400 will be performed using vision, touch, and two hands. The vision
09500 effort will be integrated with other abilities, and while no great
09600 generality will be stressed, new modules will be incorporated into
09700 the system, and a set of techniques will evolve. These will depend
09800 heavily on techniques similar to those of our recent studies in
09900 visual feedback and hand/eye coordination. The internal model of the
10000 world will be used to predict visual appearance of selected areas of
10100 the scene, and a set of verification procedures will confirm or
10200 contradict the predictions. Many of the operations will be connected
10300 with supplying feedback to manipulation, for alignment and insertion.
10400 These visual procedures will have models for the parts and
10500 approximate locations.
10600
10700 This and other visual tasks connected with assembly will initially be
10800 performed as special case problems. In addition, to make these
10900 techniques available, we will pursue development of strategy
11000 programs. This step is essential if intelligent assembly devices are
11100 to be conveniently programmed for complex tasks. Within the division
11200 of labor between large and small machines, this facility must reside
11300 in the central time-sharing facility which has large memory, file
11400 storage, and problem-solving languages. The system must have a model
11500 of the parts for assembly, a sequence of instructions for assembly.
11600 It will be necessary to have a representation of shape and models for
11700 usual assembly operations such as insertion and alignment, and the
11800 ability to solve simple problems in connection with these operations,
11900 all this to enable convenient communication with the user. When these
12000 facilities exist, the addition of new features and operations can be
12100 incorporated smoothly, so that users can call on a growing library of
12200 planning modules. The result of a planning effort is a cycle of
12300 machine planning and interaction which results in a plan network for
12400 the mini computer which controls individual machines.
00100 II.B. VISUAL DEVELOPMENT FOR APPLICATIONS
00200
00500 A major part of our effort will be
00600 vision for assembly; an assembly task will be performed using vision,
00700 touch, and two hands. The vision effort will be integrated with
00800 other abilities, and while no great generality will be stressed,
00850 new problems will be faced, new
00900 modules will be incorporated into the system, and a set of techniques
01000 will evolve.
01005 Visual feedback for alignment and insertion is a primary and typical
01010 function. Visual procedures will have models for parts and approximate
01015 locations.
01200 The internal model of the world will be used to predict the
01300 appearance of simple features in selected areas of the scene, and a set of verification
01400 procedures will confirm or contradict the predictions.
01405 Other visual operations will be based on similar techniques. This
01410 is particularly appropriate for the industrial environment for which
01415 parts are well known in advance, and positions are known well. Simple
01420 procedures will be used for gross localization, since a little engineering
01425 of the problem can provide adequate contrast and color coding for a few
01430 such locating tasks.
01700 A typical example is our
01800 current project, assembly of a water pump. The major parts are to be
01900 located, the screws are supplied as is standard, by a feeder.
02000 Locating the body and cover of the pump require a gross localization,
02100 then a fine localization of screw holes. Touch provides a final
02200 accuracy and independent coordination of the hand. The placing of
02300 alignment pins within screw holes can be monitored visually; although
02400 the previous actions provide adequate accuracy. Placing of the cover
02500 over alignment pins can be carried out without vision. However, our
02600 improved force sensing will be useful for that operation when
02700 completed. The insertion of alignment pins in other screw holes, and
02800 the insertion of screws in holes will be monitored visually. Although
02900 the assembly has been performed up to tightening of the screws, by
03000 the hand alone, this will provide a good test case for development of
03100 vision, which will increase reliability.
03200
03300 To be precise in what vision software will be implemented, we will
03400 greatly expand our efforts in visual feedback; at present these are
03500 adequate for polyhedra. We will generalize these to objects with
03600 with curved edges, and extend the quality of the verification modules
03700 in straightforward ways using our edge detection and color
03800 facilities. These prediction techniques involve 2d shape description
03900 techniques. Template matching techniques are straightforward and
04000 standard; we expect to make more sophisticated description modules
04100 which have part/whole capability, of use in planning. Some simple
04200 extensions to 3d descriptions are planned. We will extend the power
04300 of our region finding and color region analysis programs. Visual
04400 input devices will be interfaced to the minicomputer and existing
04500 modules converted.
04510 SELF-CALIBRATION, NULL GAMES
04550
04600 Vision research
04700
04800 Visual tasks connected with assembly will initially be performed as
04900 special case problems. As we have pointed out, communication with
05000 the machine will be necessary for job specification and instruction.
05100 In parallel with progress on vision for assembly, to make these
05200 techniques available, we will pursue development of visual strategy
05300 programs. We describe separately the work on construction strategies,
05400 and limit this discussion to visual strategy. The domain of assembly
05500 is particularly attractive as a subject for strategy programs, since
05600 the context is much richer than in more artificial environments, such
05700 as the blocks world. Although a much more complex problem in the
05800 shapes and structural relations, in some ways, it is simpler; there
05900 are more types of visual information to use, more contextual
06000 constraints,a greater variety of simple verification operations to
06100 perform. This step is essential if intelligent assembly devices are
06200 to be conveniently programmed for tasks. Within the division of labor
06300 between large and small machines, this facility must reside in the
06400 central time-sharing facility which has large memory, file storage,
06500 and problem-solving languages. The system must have a model of the
06600 parts for assembly, and a priority from higher up of the parts and
06700 relations to verify or perceive. It will be necessary to have a
06800 representation of shape and models for usual assembly operations such
06900 as insertion and alignment, and the ability to make predictions of
07000 expected visual scenes and choose a sequence of operations, all this
07100 to enable convenient communication with the user. When these
07200 facilities exist, the addition of new features and operations can be
07300 incorporated smoothly, so that users can call on a growing library of
07400 planning modules. The result of a planning effort is a cycle of
07500 machine planning and interaction which results in a plan network for
07600 the mini computer which controls individual machines.
07700
07800
07900 We will continue with our work with description,representation and
08000 recognition of complex objects using depth data. We are able to make
08100 complete descriptions of objects such as rings and s-shaped snakelike
08200 objects. The programs can segment dolls, toy horses, etc in
08300 intuitively appealing ways and describe the segments well. The next
08400 efforts will be to improve and generalize the segmentation process of
08500 describing primitive parts, to link the descriptions of primitives
08600 into joints, then to form object descriptions from the descriptions
08700 of joints. The recognition of such objects depends first on
08800 internal modelling of an object, then on matching perceived objects
08900 with previously stored internal models. Our representation is useful
09000 in giving a symbolic description of objects which is useful for
09100 visual memory. We intend also to apply large parts of our programs
09200 for description and recognition of curved objects using only
09300 monocular intensity information. This is a much harder problem, but
09400 within our paradigm, shares much of the same code, and relies on the
09500 same conceptual basis of local 3d models. This might seem overly
09600 sophisticated to be relevant to industrial robotics, since early
09700 applications might use the simplest facilities. Our representation
09800 of shape provides a natural way of representing shape internally in
09900 symbolic form and in communicating with a user. There are other
10000 programs at the laboratory in computer graphics (OCCULT) geometric
10100 modelling (GEOMED) which we plan to use as a basis for Computer-Aided
10200 Mechanical Design.
10300
10400
10500
10600 We will continue work on color region analysis and on a new system
10700 which combines region analysis with semantics about objects and
10800 relations. These programs already exist, but are under extensive
10900 development to integrate more knowledge and to fit into a complete
11000 visual system. We anticipate that they will function in more complex
11100 environments than have been attempted in the past. There is a growing
11200 effort on outdoor scenes, in connection with navigation of vehicles.
11300 While this is not directly relevant to the industrial environment, it
11400 does reflect the growing involvement in complex visual tasks, and is
11500 another force for development of useful visual programs.
11600
00100 II.C. MANIPULATOR DEVELOPMENT
00200
00300 Manipulator research began at SAIL in 1966 with the accquition and
00400 programming of a Rancho Orthotic Arm, this arm was used in vision
00500 directed block stacking programs. The present arm, the result of a
00600 continuing design project, replaced the Rancho Arm in 1970. This arm
00700 like its predecessor was controlled by a digital servo program
00800 running under the time sharing computer. The new arm was used in the
00900 "Instant Insanity" demonstration in 1971. A second arm of the same
01000 type, with only minor modifications, is currently being interfaced to
01100 the computer. Both arms will share a common work space and will be
01200 able to be used individually, or together for two handed tasks.
01300
01400 Each joint of the arm is calibrated in terms of torque v. drive
01500 level and it is possible to predict the joint drive levels to produce
01600 a given force at the hand. Further, for the hand to exhibit degrees
01700 of freedom of motion, various joints are selected to be "free", that
01800 is to have no position feedback applied to them. By exerting a force
01900 at the hand and providing that certain degrees of freedom exist it is
02000 possible to perform a much wider class of tasks than simple
02100 positional control, for instance screwing in screws, mating parts,
02200 inserting tools and turning cranks.
02300
02400 Touch sensors on the fingers allow the hand to sense objects without
02500 disturbing them. When activated the arm will stop when any of the
02600 sensors touch. Branching arm instructions can test the state of the
02700 sensors and modify the execution of an arm program. When screwing a
02800 nut onto a bolt, for instance, the hand is first centered over the
02900 bolt by touching it.
03000
03100 Control of the arms is by a series of high level instructions; these
03200 instructions may be executed directly, or may be assembled together
03300 into an arm program. Arm programs may then be executed, as desired,
03400 by the control program. The control instructions may be accessed
03500 directly by other programs, using the message procedure mechanism, or
03600 in the form of symbolic source file.
03700
03800 Positional accuracy at the hand is typically 0.1 inches with
03900 repeatibility of 0.02 inches. Force control at the hand is within 10
04000 ounces. The data rate to run the arm from an assembled arm program is
04100 of the order of 100 bits/second.
04200
04300 Manipulator research moves ahead simultaneously on three fronts:
04400 control, primitives and devices. Tasks are translated into an
04500 existing hand language and where the task cannot be accomplished in
04600 terms of existing primitives, new primitives are formulated in a
04700 consistent manner. When a new primative is formulated, real time
04800 routines are developed to perform the action. This also leads, in
04900 many cases, to the development of new hardware. Also as new
05000 developments occur in hardware design, existing real time routines
05100 are either re-written or modified.
05200
05300 Research is now concentrating on the following areas:
05400
05500 Strain gauge instrumentation of the wrist, in order to allow for more
05600 sensitive interaction of the hand with a task. High resolution,
05700 high sensitivity touch sensors, to increase tactile recognition and
05800 control abilities. These developments will lead in turn to new
05900 control concepts.
06000
06100 Development of tools for the hand. These tools can be instrumented
06200 such that the computer can feel and or see at the end of the tool.
06300 This should be a very important area of research as it goes beyond
06400 present human capabilities.
06500
06600 Two handed arm control, the planning and execution of tasks requiring
06700 the coordinated motion of both arms. This will require an extension
06800 of the existing servo program and the analysis of synchronization
06900 problems. The development of collision avoiders, so that he arms will
07000 not collide with other objects and with each other.
07100
07200 Modification of the existing arm design to provide for better
07300 incremental motions, more degrees of freedom and a more rugged design
07400 suitable foe industrial use. Development of arm and eye computer
07500 interfaces. These contain synchronized analog/digital converters
07600 for input and current controlled drivers for output.
07700
07800 The development of new hands is expected as more complex tasks are
07900 attempted. At present, with only one hand, we have been performing
08000 the positioning type of hand actions. When the second arm is
08100 operational we will be able to perform holding and pulling actions as
08200 well.
08300
00100 II.D.SYSTEM REQUIREMENTS FOR ADVANCED AUTOMATION
00200
00300 A key element in the development of any large programming effort is
00400 the software support. There has been continual effort along these
00500 lines at the S.A.I.L. and many useful ideas have been developed. We
00600 propose to extend the research along two separate lines: support for
00700 research and system software for operating automated systems. We
00800 will briefly describe our post efforts and in this area and what we
00900 propose to undertake.
01000
01100 The S.A.I.L. has pioneered in several areas of system programming,
01200 including timesharing systems, interactive graphics, and programming
01300 languages.
01400
01500 A great deal of additional effort has gone into direct support of
01600 hand-eye research. Very early, we established a set of standard
01700 formats and library routines; this has facilitated the cumulative
01800 effect needed for progress in an area as difficult as this one. A
01900 programming language S.A.I.L., was implemented in 1968. The language
02000 incorporates special features for large real-world-oriented problem
02100 solving systems and is currently in use at a number of Artificial
02200 Intelligence and other laboratories.
02300
02400 As we began to assemble larger and more sophisticated collections of
02500 programs, we felt a need for flexible mechanisms for cooperating
02600 sequential processes. The resulting monitor and language features [
02700 , ] have worked well for us and have been influential on other
02800 projects planning. Recently, we have added an additional set of
02900 features to SAIL to facilitate non-deterministic and event-directed
03000 programming. The early reactions to this work, both within the
03100 laboratory and without has been very encouraging.
03200
03300 We expect relatively little work to be needed on further systems
03400 support for basic research. There will undoubtedly be efforts to
03500 take advantage of new hardware and of new programming ideas that may
03600 develop in the course of this program. Almost all of this work
03700 should be covered by other funding.
03800
03900 The development of software for the assembly station will require
04000 more of our effort. The octapus configuration requires code to be
04100 resident in the local computer and in the shared machine. The low
04200 level programs in the local machine will not be modified often, thus
04300 we can assume that a PDP-l0 resident compile will suffice. The
04400 planning programs and general vision programs will be resident in the
04500 shared system. There are two possible configurations for the shared
04600 computer system: A PDP-10 equivalent machine or a software package
04700 in ASA Standard Fortran IV which will run on any sufficiently large
04800 machine. One of the tasks under this proposal would be to evaluate
04900 these two alternatives.
05000
00100 III. Dissemination of Information; Relations with other Institutions.
00200
00300 All of the discoveries made under this grant will, of course, be made
00400 public. We view our role in information transfer in a much broader
00500 way. Having no desire to sell products and services and no clients
00600 with interests to protect, a university laboratory should be
00700 primarily a place for acquiring and spreading knowledge.
00800 place for acquiring and spreading knowledge.
00900
01000 The Stanford Artificial Intelligence Laboratory has always considered
01100 information transfer to be one of its primary goals. In addition, to
01200 ourb published papers and reports, we have made a number of film
01300 reports which have been extensively circulated. There have been
01400 thousands of visitors, ranging from elementary school classes to
01500 major scientific, governmental and industrial missions from many
01600 countries. We have also encouraged extended visits by workers from
01700 other laborities and from industry. Members of the laboratory staff
01800 have played a major role in the organization of journals, conferences
01900 and seminars in artificial intelligence. Many of our algorithms,
02000 systems, and hardware designs have been adopted by other groups.
02100
02200 The success of the program proposed here depends heavily on
02300 interaction with industry. We will need additional information on
02400 the opportunities for automation and will try to involve manfactures
02500 in the development of the pilot assembly station. We have good
02600 working relatinships with a number of firms and we expect that a
02700 concrete project will help forge the bonds necessary for the transfer
02800 of advanced automation technology from the laboratory.
02900
03000 One promising approach to technology tansfer is a staff associates
03100 program. This involves residence of about a year's duration at the
03200 laboratory by industrial scientists. Such a program was used
03300 successfully at the MIT, Electronic's Research Laboratory in the area
03400 of programming systems for numerically controlled tools and design
03500 automation. We plan to explore this as well as other mechanisms for
03600 gaining the insights that industrial experience can add to our
03700 enterprise.
03800
00020 IV. STAFF
00040
00100 Brief Biographical Sketches
00200
00300 Jerome A. Feldman,Principal Investigator: Early training in
00400 physics and mathematics; Ph.D. in computer science from
00500 Carnegie-Mellon, 1964. Two years at M.I.T. Lincoln Laboratory.
00600 At Stanford since 1966, leader of Robotics group since 1968.
00700 currently Associate Professor of Computer Science and
00800 Associate Director of the Artificial Intelligence Laboratory.
00900 Research interests include Robotics,associative processing,
01000 inductive inference,and Translator-writing systems.
01100
01200 Thomas O. Binford,Associate Investigator:
01210 Received PhD in physics from the University of Wisconsin, 1965,
01220 working with strange particle reactions, Regge pole and group theory
01230 phenomenology. Fulbright 1965-66 Tata Institute of Fundamental
01240 Research, Bombay, India: phase shift analysis of strange particle
01250 systems; theory of unstable particles. At Artificial Intelligence
01260 Laboratory, MIT, from 1967 to 1970, working on representation of shape,
01270 region-based analysis system and other areas of computer vision, systems
01280 programming for LISP. Lecturer in computer science at Stanford University.
01285 Research areas include computer vision, robotics,
01290 representation, and perception.
01300
01400 Richard Paul,Associate Investigator:
01500
01600 John McCarthy:
01700
01800 Victor Scheinman: Bachelor's in Electrical Engineering,M.I.T.,
01900 19??. Master's (19??) and Engineer's(19??) in Mechanical Engineering
02000 from Stanford. Employed as a design engineer at Stanford,M.I.T.,
02100 and Raychem since 19??. Responsible for the design and
02200 construction of ? computer controlled arms, as well as other
02300 Robotics equipment such as color-wheels,focus controls,pan-tilt
02400 heads,etc.
02500
02600 Lester Earnest:
02700
02800 Curriculum Vitae
02900
03000 JEROME A. FELDMAN
03100
03200 1972
03300
03400
03500 Biographical Information:
03600
03700 Born: December 5, 1938 in Pittsburgh, Pennsylvania, U.S.A.
03800 Nationality: United States
03900 Marital Status: Married, two children
04000
04100
04200 EDUCATION:
04300
04400 B.A. (Physics, with Distinction) Rochester 1960
04500 M.A. (Mathematics) Pittsburgh 1961
04600 Ph.D. (Mathematics, Computer Science) Carnegie-Mellon 1964
04700
04800
04900 HONORS AND SOCIETIES:
05000
05100 Association for Computing Machinery
05200 American Association for the Advancement of Science
05300 National Lecturer, Association for Computing Machinery 1966
05400 Best Session Award, IEEE, August 1970
05500 Fulbright Lecturer, Hebrew University, Jerusalem 1970-71
05600
05700
05800 PROFESSIONAL EXPERIENCE:
05900
06000 Engineer, Westinghouse Electric Corporation 1960-61
06100 Asst. Research Scientist, Carnegie-Mellon U. 1963-64
06200 Staff Member, MIT Lincoln Laboratory 1964-66
06300 Summer Lecturer, U. Pennsylvania 1966
06400 Summer Lecturer, U. Michigan 1967
06500 Asst. Prof., Computer Science, Stanford U. 1966-69
06600 Assoc. Prof., Computer Science, Stanford U. 1969-Present
06700 Visiting Prof. of Computer Science, Hebrew U. 1970-71
06800 Assoc. Dir., Artificial Intelligence Lab., Stanford U. 1972-Present
06900
07000
07100
07200 EDITORIAL, ORGANIZATIONAL, AND CONSULTATION:
07300
07400 Reviewer for Computing Reviews, Journal and
07500 Communications of the ACM, Information and
07600 Control, IEEE Computer Group, various Conferences
07700 and government agencies.
07800
07900 Consultant for IBM, Systems Development Corp.,
08000 Martin-Marietta Corp., Lockheed Missiles and Space
08100 Corp., General Motors, National Institute of Health
08200
08300 Editorial Board, Fundamental Studies in Computer
08400 Science, North-Holland Publishing Company
08500
08600 Lecturer, ACM Professional Development Seminar in
08700 Time-Sharing, 1967
08800
08900 Organizing Committee, Israel Alta Conference,
09000 Ashkelon, February 1971
09100
09200 Organizing Committee, NATO Conference on Software
09300 Engineering, Rome, Italy, November 1969
00100 PUBLICATIONS
00200
00300 Jerome A. Feldman
00400
00500
00600 "Some Regularity Theorems on Kernel Methods of Summation for
00700 Functions of a Complex Variable," Masters' Thesis, U. of Pittsburgh,
00800 1961.
00900
01000 "A Formal Semantics for Computer Oriented Languages", Ph.D.
01100 Dissertation, May 1964, Carnegie-Mellon University.
01200
01300 "Aspects of Associative Processing", TN-1965-13, Lincoln Laboratory,
01400 Massachusetts Institute of Technology, Lexington, Massachusetts.
01500
01600 "A Formal Semantics for Programming Languages", Proceedings of the
01700 International Federation of Information Processing Societies, May
01800 1965.
01900
02000
02100 "A Formal Semantics for Computer Languages and its Applications in a
02200 Compiler-Compiler", Communications of the Association for Computing
02300 Machinery, Vol. 9, No. 1, January 1966, and reprinted in "COMPUTER
02400 COMPILER TECHNIQUES", Auerbach Publishers, 1971.
02500
02600 "An Associative Processing System for Conventional Digital
02700 Computers", (with P.D. Rovner), TN-1967-19, Lincoln Laboratory, MIT,
02800 Lexington, Mass.
02900
03000
03100 "The Compiler-Compiler in a Time-Sharing Environment", (with J.
03200 Curry), Summer Lectures on Advanced Computer Organization, University
03300 of Michigan, June 1967. Also Bit Dropper, September 1967.
03400
03500 "Translator Writing Systems", (with D. Gries), CS 69, Computer
03600 Science Department, Stanford University, June 1967.
03700
03800 "First Thoughts on Grammatical Inference", A.I. Memo 55, Stanford
03900 University, August 1967.
04000
04100 "Translator Writing Systems", (with D. Gries), Communications of the
04200 Association for Computing Machinery, Vol. 11, No. 3, March 1968, and
04300 reprinted in "Computer Compiler Techniques", Auerbach Publishers,
04400 1971.
04500
04600 "The Leap Language and Data Structure", (with P.D. Rovner), Lincoln
04700 Laboratory Memorandum, January 1968. Also in reduced form in
04800 Proceedings of the International Federation of Information Processing
04900 Societies, August 1968.
05000
05100 "Grammatical Inference and Grammatical Complexity", (with others), CS
05200 125, Stanford University, Computer Science Department, Stanford,
05300 California, May 1969.
05400
05500 "An Algol-based Associative Language", (with P.D. Rovner), A.I. Memo
05600 66, Stanford University, 1968. Also Communications of the ACM, Vol.
05700 12, No. 8 August 1969, pp. 439-449. Reprinted in, INTRODUCTION TO
05800 INFORMATION SCIENCE (T. Saracevic, Ed.) Bowker, 1971.
05900
06000 "The Stanford Hand-Eye Project", (with others), Proc. First
06100 International Congress on Artificial Intelligence, Washington, D.C.,
06200 May 1969.
06250
06300 "The Computer Description of Simply Described Scenes", (with R.P.
06400 Paul and G. Falk), A.I. Memo 101, Stanford University. Also in,
06500 PERTINENT CONCEPTS IN COMPUTER GRAPHICS, (J. Nievergelt and M.
06600 Faiman, Eds.), U.of Illinois Press, 1969.
06700
06800 "Machine Intelligence", Review of Numbers I.III of the Machine
06900 Intelligence Series, Information and Control, 14, 490-492, 1969.
07000
07100
07200 "Towards Automatic Programming", Preprints of the NATO Software
07300 Engineering Conference, Rome, Italy, 1969.
07400
07500 "Getting a Computer to See Simple Scenes", IEEE Student Journal,
07600 September 1970.
07700
07800 "A Survey of Grammatical Inference", (with A. Biermann), Proceedings
07900 of International Congress on Pattern Recogniton, Honolulu, January
08000 1971. also in S. Watanbe (Ed.) FRONTIERS OF PATTERN RECOGNITION,
08100 Academic Press, 1972.
08200
08300 "Hebrew University Production Language", (with S. Tsur and D. Lehman)
08400 Hebrew University, Computer Science Department, February 1971.
08500
08600 "A Way of Looking at Things", Hebrew University, Computer Science
08700 Department, February 1971.
08800
08900 "A Laboratory for Hand-Eye Research", (with others), Proceedings
09000 IFIPS International Conference, Lubljana, Yugoslavia, August 1971.
09100
09200 "System Support for the Stanford Hand-Eye Project", (with R. Sproull)
09300 Proceedings Second International Congress on Artificial Intelligence,
09400 London, September 1971, p. 183-189.
09500
09600 "The Use of Vision and Manipulation to Solve the Instant Insanity
09700 Puzzle", (with others), Proceedings Second International Conference
09800 on Artificial Intelligence, London, September 1971, p. 359-364.
09900
10000 "Some Decidability Results on Grammatical Inference and Complexity",
10100 Information and Control, Vol. 20, No. 3, April 1972, p. 244-262.
10200
10300 "On The Synthesis of Finite-State Machines from Samples of their
10400 Behavior", (with A. Biermann), IEEE Transactions on Computers, June
10500 1972, Vol. C-21, No. 6, p. 592-596.
10600
10700 "Automatic Programming", CS 255, Stanford University, Computer
10800 Science Department, Stanford, California, February 1972.
10900
11000 "Total Complexity and the Inference of Best Programs", (with P.
11100 Shields), CS 253, Stanford University, April 1972. Submitted to
11200 Mathematical Systems Theory.
11300
11400 "Recent Developments in SAIL-An Algol Based Language for Artificial
11500 Intelligence", (with others). CS 308, Stanford University, August 1972.
11600 To appear in Proc. Fall Joint Computer Conference, 1972.
00100 MAJOR PROGRAMMING SYSTEMS DEVELOPED
00200
00300
00500
00600 TRANSLATOR WRITING SYSTEMS
00700
00800 FSL: Additional reference
00900
01000 Itturriaga, R. et.al., "Techniques and Advantages of Using the
01100 formal compiler writing system FSL to implement a Formula Algol
01200 Compiler", Proc. AFIPS Conference 1966, pp. 241-252.
01300
01400 VITAL: Additional Reference
01500
01600 Mondschein, L.F. "VITAL compiler-compiler System Reference Manual",
01700 TN-1967-12. M.I.T., Lincoln Lab., February 1967.
01800
01900
02000 ASSOCIATIVE LANGUAGE SYSTEMS
02100
02200 LEAP: Additional reference
02300
02400 Rovner, P., "The LEAP Users Manual", Mem. 23L-0009, M.I.T., Lincoln
02500 Lab., December 1968.
02600
02700 Swinehart, D. and R. Sproull, "SAIL Users Manual", Operating Note
02800 57.1; Stanford A.I. Project, April 1970.
02900
03000
03100 COOPERATING SEQUENTIAL PROCESSES
03200
03300 HAND-EYE SYSTEM: Additional reference
03400
03500 Pingle, K., "System Manual for Hand-Eye Hackers", Internal
03600 Memorandum, Stanford A.I. Project, June 1971.
00100 DOCTORAL STUDENTS
00200
00300
00400 NAME DEPT. TITLE/TOPIC FINAL ORAL CURRENTLY
00500
00600 F.J. Hilbing Industrial Strategies for 1968 U.S.A.F.
00700 Engineering Paging a Large Academy
00800 Associative Data Base
00900
01000 J.J. Horning Computer A Study of Grammati- 1969 U. of
01100 Science cal Inference Toronto
01200
01300 L.F. Morris Computer Semantic Models and 1969 Syracuse U.
01400 Science Compiler Correctness
01500
01600 G. Falk Computer Computer Interpreta- 1970 Rutgers U.
01700 Science tion of Imperfect
01800 Line Data as a Three-
01900 Dimensional Scene
02000
02100 I. Sobel Electrical Camera Models and 1970 Haifa
02200 Engineering Machine Perception Technion
02300
02400 J.Tenenbaum Electrical Accommodation in 1970 Stanford
02500 Engineering Computer Vision Research
02600 Institute
02700
02800 J.D.Becker Computer An Information 1970 Bolt,
02900 Science Processing Model of Beranek, &
03000 Intermediate Level Newman
03100 Cognition
03200
03300 R. Paul Computer Studies with a 1972 Stanford U.,
03400 Science Computer Controlled A.I. Lab.
03500 Arm
03600
03700 D.Swinehart Computer A One-Level Language 1972 Stanford U.,
03800 Science System A.I. Lab.
03900
04000 A. Gill Electrical Visual Feedback Con- 1972 Israel
04100 Engineering trol of a Mechanical Defense
04200 Arm Establshmnt.
04300
04400 D. Levine Computer Automated Error 1972 Stanford U.
04500 Science Correction of IMSSS
04600 German Sentences
04700
04800 G. Grape Computer Computer Vision 1973
04900 Science Through Sequential
05000 Abstraction
05100
05200 M. Arisawa Computer Inference of 1973
05300 Science Picture Grammars
05400
05500 J. Gips Computer Structure of 1973
05600 Science Pictures Applied to
05700 Art and Vision
05800
05900 S.Ganapathy Computer Analysis of Simple 1973
06000 Science Scenes Using Multiple
06100 Views
06200
06300 J. Low Computer Optimization of 1973
06400 Science Data Structures for
06500 Associations
06600
06700 Y.Yakimovsky Computer Knowledge-based, 1973
06800 Science Decision Theoretic
06900 Region Analysis of
07000 Pictures
07100
00100
00200 V. COMPUTING FACILITIES
00300
00400 *** LIKE ARPA PROPOSAL ***
00500
00600 VI. BUDGET
00700
00800 *** ABOUT 650K FOR 3 YEARS, SHOULD BE IN TODAY ***
00900
01000 VII.REFERENCES
01100
01200 *** SOON ***
01300
01400 VIII. RELEVANT LABORATORY PUBLICATIONS
01500
01600 *** EDITED FROM ARPA REPORT ***
01700